﻿<UserControl 
  x:Class="Arch.Samples.RiaServices.MainPage"
  xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
  xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  xmlns:navigation="clr-namespace:System.Windows.Controls;assembly=System.Windows.Controls.Navigation" 
  xmlns:uriMapper="clr-namespace:System.Windows.Navigation;assembly=System.Windows.Controls.Navigation"
  xmlns:dataControls="clr-namespace:System.Windows.Controls;assembly=System.Windows.Controls.Data.DataForm.Toolkit" 
  xmlns:login="clr-namespace:Arch.Samples.RiaServices.LoginUI"
  xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:IoC="clr-namespace:Arch.Client.Silverlight.IoC;assembly=Arch.Client.Silverlight" mc:Ignorable="d" d:DesignWidth="640" d:DesignHeight="480">

    <Grid x:Name="LayoutRoot" Style="{StaticResource LayoutRootGridStyle}">
        <Border x:Name="ContentBorder" Style="{StaticResource ContentBorderStyle}">
            <navigation:Frame x:Name="ContentFrame" Style="{StaticResource ContentFrameStyle}" 
                              Source="/Home" Navigated="ContentFrame_Navigated" NavigationFailed="ContentFrame_NavigationFailed">
                <navigation:Frame.UriMapper>
                    <uriMapper:UriMapper>
                        <uriMapper:UriMapping Uri="" MappedUri="/Views/Home.xaml"/>
                        <uriMapper:UriMapping Uri="/{pageName}" MappedUri="/Views/{pageName}.xaml"/>
                    </uriMapper:UriMapper>
                </navigation:Frame.UriMapper>
                <navigation:Frame.ContentLoader>
                    <IoC:BuildUpNavigationContentLoader />
                </navigation:Frame.ContentLoader>
            </navigation:Frame>
        </Border>
        <Grid Style="{StaticResource NavigationOuterGridStyle}">
            <Grid x:Name="NavigationGrid" Style="{StaticResource NavigationGridStyle}">

                <Border x:Name="BrandingBorder" Style="{StaticResource BrandingBorderStyle}">
                    <StackPanel x:Name="BrandingStackPanel" Style="{StaticResource BrandingStackPanelStyle}">

                        <ContentControl Style="{StaticResource LogoIcon}"/>
                        <TextBlock x:Name="ApplicationNameTextBlock" Style="{StaticResource ApplicationNameStyle}" 
                            Text="{Binding Strings.ApplicationName, Source={StaticResource ApplicationResources}}"/>

                    </StackPanel>
                </Border>
                <Border x:Name="LinksBorder" Style="{StaticResource LinksBorderStyle}">
                    <StackPanel x:Name="LinksStackPanel" Style="{StaticResource LinksStackPanelStyle}">

                    <HyperlinkButton Style="{StaticResource LinkStyle}" 
                            NavigateUri="/Home" TargetName="ContentFrame" Content="{Binding Path=Strings.HomePageTitle, Source={StaticResource ApplicationResources}}"/>

                    <HyperlinkButton Style="{StaticResource LinkStyle}" 
                            NavigateUri="/Todos/TodoSearch" TargetName="ContentFrame" Content="{Binding Path=Strings.SearchPageTitle, Source={StaticResource ApplicationResources}}"/>

                    <HyperlinkButton Style="{StaticResource LinkStyle}" 
                            NavigateUri="/Todos/TodoList" TargetName="ContentFrame" Content="{Binding Path=Strings.TodoPageTitle, Source={StaticResource ApplicationResources}}"/>

                    <HyperlinkButton Style="{StaticResource LinkStyle}" 
                            NavigateUri="/SubCategories/SubCategoryList" TargetName="ContentFrame" Content="{Binding Path=Strings.SubCategoryPageTitle, Source={StaticResource ApplicationResources}}"/>

                    <HyperlinkButton Style="{StaticResource LinkStyle}" 
                            NavigateUri="/Categories/CategoryList" TargetName="ContentFrame" Content="{Binding Path=Strings.CategoryPageTitle, Source={StaticResource ApplicationResources}}"/>

                    <Rectangle x:Name="Divider1" Style="{StaticResource DividerStyle}"/>

                    <HyperlinkButton x:Name="Link2" Style="{StaticResource LinkStyle}" 
                            NavigateUri="/About" TargetName="ContentFrame" Content="{Binding Path=Strings.AboutPageTitle, Source={StaticResource ApplicationResources}}"/>

                    </StackPanel>
                </Border>
            </Grid>
            <Border Style="{StaticResource LoginContainerStyle}">
                <login:LoginStatus/>
            </Border>
        </Grid>

    </Grid>

</UserControl>